Часть 1. Конструирование интерфейса
Глава 1.1. Пользователь, интерфейс, команда
В книге часто будут встречаться термины «пользователь», «пользовательский интерфейс», «команда» и «командный интерфейс». Давайте определим, что означают эти термины и как они связаны.
Пользователь – человек, работающий с прикладным решением в режиме 1С:Предприятие. Автоматизированная система создает рабочую среду, взаимодействуя с которой, пользователь решает стоящие перед ним задачи. Для обеспечения удобной и безопасной работы создаются пользовательские интерфейсы.
Пользовательский интерфейс – интерфейс, обеспечивающий передачу информации между пользователем-человеком и программно-аппаратными компонентами компьютерной системы.
ПРИМЕЧАНИЕ
Определение взято из свободной интернет-энциклопедии «Википедия»: http://ru.wikipedia.org/wiki/Интерфейс_пользователя.
Пользовательский интерфейс компьютерной программы часто понимают только как ее внешний вид. В действительности пользовательский интерфейс объединяет в себе все элементы и компоненты программы, которые влияют на взаимодействие пользователя с программным обеспечением. Основными элементами пользовательского интерфейса являются:
- набор задач пользователя, которые он решает при помощи программы;
- элементы управления программой;
- навигация между разделами программы;
- дизайн экранов программы;
- отображаемая информация и форматы отображения;
- устройства и технологии ввода данных;
- диалоги, взаимодействие и транзакции между пользователем и компьютером;
- обратная связь с пользователем.
Составной частью пользовательского интерфейса является командный интерфейс, обеспечивающий доступ пользователей к функциональности программы.
ПРИМЕЧАНИЕ
В дальнейшем мы будем оперировать в основном понятием «командный интерфейс». Однако принципы формирования командного интерфейса во многом аналогичны принципам формирования прочих составных частей пользовательского интерфейса, в частности форм.
В общем случае команда – это указание некоему интерфейсу (командный интерфейс пользователя), побуждающее исполнителя (компьютерная программа) выполнить действия для решения задачи.
ПРИМЕЧАНИЕ
Определение взято из свободной интернет-энциклопедии «Википедия»: http://ru.wikipedia.org/wiki/Команда_(программирование).
При этом команда:
- может быть отдана только пользователем, имеющим на это право;
- не включает в себя подробные разъяснения, как будет происходить исполнение, а предполагает, что исполнитель (программа) знает, что и как необходимо исполнить.
Командный интерфейс – совокупность команд, доступных пользователю, при помощи которых он отдает приказание системе на выполнение действий.
Применительно к компьютерной программе совокупность команд определяет, какие действия она может выполнить, а командный интерфейс определяет, какие команды может отдать конкретный пользователь и как он получит доступ к этим командам.
Набор команд интерактивной компьютерной программы обычно включает в себя несколько категорий команд:
- команды, которые позволяют перемещаться между функциональными блоками программы, – например, функции настройки программы, функции просмотра данных, функции модификации данных, функции импорта/экспорта данных;
- команды, которые позволяют вызывать формы и перемещаться между ними, – например, вызов формы просмотра перечня товаров, вызов формы ввода нового документа;
- команды, которые позволяют выполнять те или иные действия с обрабатываемыми данными, – например, изменение элемента справочника, построение отчета.
В связи с тем, что различные пользователи выполняют различные задачи, права на использование обрабатываемой системой информации и состав доступных команд для них будут различаться.
Для разграничения прав и состава команд в компьютерных программах обычно реализуется система учетных записей. Каждая учетная запись (возможно, защищенная паролем) определяет совокупность ресурсов, доступных пользователю. На основании учетной записи осуществляются идентификация, аутентификация пользователя и предоставление разрешения на работу с ресурсами.
Таким образом, при разработке командного интерфейса необходимо решить две основные задачи:
- из множества команд, исполняемых программой, выделить подмножество команд, доступных конкретному пользователю;
- предоставить возможность пользователю вызывать доступные команды.